//============================================================================
// Name        : PageRank.cpp
// Author      : Jorge
// Version     :
// Copyright   : Your copyright notice
// Description : Hello World in C++, Ansi-style
//============================================================================

#include <iostream>
#include "Operaciones.h"
using namespace std;


void pageRank(float b,Matriz* matriz, Vector* semilla){

	int dimension = matriz->getDimension();
	float valor = (1-b) / dimension;

	Operaciones* op = new Operaciones();
	Matriz* matrizEscalada = op->multiplicar(matriz,b);

	Vector* vector_resultado = new Vector(dimension);
	*vector_resultado = *semilla;

	for(int iteracion = 0; iteracion < 100; iteracion++){
			Vector* auxiliar = op->multiplicar(matrizEscalada,vector_resultado);
			Vector* auxiliar_vector =  op->sumar(auxiliar,valor);
			*vector_resultado = *auxiliar_vector;
	}
	vector_resultado->mostrarResultado();
}


int main() {
	//la matriz M se crea por defecto hay que cambiar los valores de manera manual
	Matriz* M = new Matriz(5);
	Vector* V = new Vector(5);
	M->setMatrizPorDefault();
	V->setVectorPorDefault();
	pageRank(0.7,M,V);
}
